package com.miplus.ccrm.report.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.miplus.ccrm.report.controller.dto.ivr.InGroupDetailDTO;
import com.miplus.ccrm.report.controller.dto.seater.ListSeaterListDTO;
import com.miplus.ccrm.report.controller.vo.cti.ListSeaterListVo;
import com.miplus.ccrm.report.controller.vo.ivr.InGroupDetailVO;
import com.miplus.ccrm.report.controller.vo.ivr.InGroupStatisticsVO;
import com.miplus.ccrm.report.pojo.CcSeater;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author 20144
* @description 针对表【CC_SEATER(坐席)】的数据库操作Mapper
* @createDate 2025-04-18 14:36:16
* @Entity generator.domain.CcSeater
*/
public interface CcSeaterMapper extends BaseMapper<CcSeater> {
    /**
     * 根据技能组类型获取坐席
     *
     * @param groupType 技能组类型 1.进线组 2.回访组 3.在线组
     * @return 坐席列表
     */
    List<CcSeater> getSeaterListByGroupType(@Param("groupType") int groupType);


    /**
     * 根据技能组类型获取技能组ID
     *
     * @param groupType 技能组类型 1.进线组 2.回访组 3.在线组
     * @return 技能组ID
     */
    String[] getGroupByType(@Param("groupType") int groupType);


    /**
     * 进线组坐席监控统计
     *
     * @return 进线组坐席监控统计
     */
    InGroupStatisticsVO inGroupStatistics();

    /**
     * 进线组坐席监控明细
     *
     * @param dto 参数
     * @return 进线组坐席监控明细
     */
    List<InGroupDetailVO> inGroupDetail(@Param("dto") InGroupDetailDTO dto);


    IPage<ListSeaterListVo> listSeater(Page<Object> objectPage, ListSeaterListDTO paras);
}




